home *** CD-ROM | disk | FTP | other *** search
/ This Disc Bytes! / Power Computing - The Disc 2 - This Disc Bytes.ISO / mac / CodeWarrior 7 Lite for 68K / MacOS Support / Headers / Universal Headers / Finder.h < prev    next >
Text File  |  1995-07-06  |  4KB  |  148 lines

  1. /*
  2.      File:        Finder.h
  3.  
  4.      Contains:    Finder flags and container types.
  5.  
  6.      Version:    Technology:    System 7.5
  7.                  Package:    Universal Interfaces 2.1 in “MPW Latest” on ETO #18
  8.  
  9.      Copyright:    © 1984-1995 by Apple Computer, Inc.
  10.                  All rights reserved.
  11.  
  12.      Bugs?:        If you find a problem with this file, use the Apple Bug Reporter
  13.                  stack.  Include the file and version information (from above)
  14.                  in the problem description and send to:
  15.                      Internet:    apple.bugs@applelink.apple.com
  16.                      AppleLink:    APPLE.BUGS
  17.  
  18. */
  19.  
  20. #ifndef __FINDER__
  21. #define __FINDER__
  22.  
  23.  
  24. #ifndef __TYPES__
  25. #include <Types.h>
  26. #endif
  27. /*    #include <ConditionalMacros.h>                                */
  28.  
  29. #ifdef __cplusplus
  30. extern "C" {
  31. #endif
  32.  
  33. #if PRAGMA_ALIGN_SUPPORTED
  34. #pragma options align=mac68k
  35. #endif
  36.  
  37. #if PRAGMA_IMPORT_SUPPORTED
  38. #pragma import on
  39. #endif
  40.  
  41.  
  42. enum {
  43. /* Make only the following consts avaiable to resource files that include this file */
  44.     kCustomIconResource            = -16455,                        /* Custom icon family resource ID */
  45.     kContainerFolderAliasType    = 'fdrp',                        /* type for folder aliases */
  46.     kContainerTrashAliasType    = 'trsh',                        /* type for trash folder aliases */
  47.     kContainerHardDiskAliasType    = 'hdsk',                        /* type for hard disk aliases */
  48.     kContainerFloppyAliasType    = 'flpy',                        /* type for floppy aliases */
  49.     kContainerServerAliasType    = 'srvr',                        /* type for server aliases */
  50.     kApplicationAliasType        = 'adrp',                        /* type for application aliases */
  51.     kContainerAliasType            = 'drop',                        /* type for all other containers */
  52. /* types for Special folder aliases */
  53.     kSystemFolderAliasType        = 'fasy',
  54.     kAppleMenuFolderAliasType    = 'faam',
  55.     kStartupFolderAliasType        = 'fast',
  56.     kPrintMonitorDocsFolderAliasType = 'fapn',
  57.     kPreferencesFolderAliasType    = 'fapf',
  58.     kControlPanelFolderAliasType = 'fact',
  59.     kExtensionFolderAliasType    = 'faex',
  60. /* types for AppleShare folder aliases */
  61.     kExportedFolderAliasType    = 'faet',
  62.     kDropFolderAliasType        = 'fadr',
  63.     kSharedFolderAliasType        = 'fash',
  64.     kMountedFolderAliasType        = 'famn'
  65. };
  66.  
  67. enum {
  68. /* Finder Flags */
  69.     kIsOnDesk                    = 0x1,
  70.     kColor                        = 0xE,
  71.     kIsShared                    = 0x40,
  72.     kHasBeenInited                = 0x100,
  73.     kHasCustomIcon                = 0x400,
  74.     kIsStationery                = 0x800,
  75.     kIsStationary                = 0x800,
  76.     kNameLocked                    = 0x1000,
  77.     kHasBundle                    = 0x2000,
  78.     kIsInvisible                = 0x4000,
  79.     kIsAlias                    = 0x8000
  80. };
  81.  
  82. /*    
  83.     The following declerations used to be in Files.i, 
  84.     but are Finder specific and were moved here.
  85. */
  86. #if !OLDROUTINELOCATIONS
  87. enum {
  88. /* Finder Constants */
  89.     fOnDesk                        = 1,
  90.     fHasBundle                    = 8192,
  91.     fTrash                        = -3,
  92.     fDesktop                    = -2,
  93.     fDisk                        = 0
  94. };
  95.  
  96. struct FInfo {
  97.     OSType                            fdType;                        /*the type of the file*/
  98.     OSType                            fdCreator;                    /*file's creator*/
  99.     unsigned short                    fdFlags;                    /*flags ex. hasbundle,invisible,locked, etc.*/
  100.     Point                            fdLocation;                    /*file's location in folder*/
  101.     short                            fdFldr;                        /*folder containing file*/
  102. };
  103. typedef struct FInfo FInfo;
  104.  
  105. struct FXInfo {
  106.     short                            fdIconID;                    /*Icon ID*/
  107.     short                            fdUnused[3];                /*unused but reserved 6 bytes*/
  108.     SInt8                            fdScript;                    /*Script flag and number*/
  109.     SInt8                            fdXFlags;                    /*More flag bits*/
  110.     short                            fdComment;                    /*Comment ID*/
  111.     long                            fdPutAway;                    /*Home Dir ID*/
  112. };
  113. typedef struct FXInfo FXInfo;
  114.  
  115. struct DInfo {
  116.     Rect                            frRect;                        /*folder rect*/
  117.     unsigned short                    frFlags;                    /*Flags*/
  118.     Point                            frLocation;                    /*folder location*/
  119.     short                            frView;                        /*folder view*/
  120. };
  121. typedef struct DInfo DInfo;
  122.  
  123. struct DXInfo {
  124.     Point                            frScroll;                    /*scroll position*/
  125.     long                            frOpenChain;                /*DirID chain of open folders*/
  126.     SInt8                            frScript;                    /*Script flag and number*/
  127.     SInt8                            frXFlags;                    /*More flag bits*/
  128.     short                            frComment;                    /*comment*/
  129.     long                            frPutAway;                    /*DirID*/
  130. };
  131. typedef struct DXInfo DXInfo;
  132.  
  133. #endif
  134.  
  135. #if PRAGMA_IMPORT_SUPPORTED
  136. #pragma import off
  137. #endif
  138.  
  139. #if PRAGMA_ALIGN_SUPPORTED
  140. #pragma options align=reset
  141. #endif
  142.  
  143. #ifdef __cplusplus
  144. }
  145. #endif
  146.  
  147. #endif /* __FINDER__ */
  148.